package fiuba.algo3.vista;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.LinkedList;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;

import fiuba.algo3.juego.JuegoGPS;

public class VentanaEleccionUsuarios implements ActionListener {

	private JFrame miFrame;
	private JuegoGPS miJuego;
	private JRadioButton[] botonesUsuarios;
	private int cantidadUsuarios;
	private JButton volver;

	VentanaEleccionUsuarios(JuegoGPS unJuego, JFrame frame) {

		this.miFrame = frame;
		this.miJuego = unJuego;

		LinkedList<String> usuarios = miJuego.getUsuariosRegistrados();
		cantidadUsuarios = usuarios.size();

		botonesUsuarios = new JRadioButton[cantidadUsuarios];

		JPanel contentPane = new JPanel();
		miFrame.setContentPane(contentPane);
		contentPane.setLayout(null);

		for (int i = 0; i < cantidadUsuarios; i++) {
			botonesUsuarios[i] = new JRadioButton(usuarios.get(i));
			botonesUsuarios[i].setBounds((i / 10) * 150 + 25,
					((i % 10) * 30) + 100, 100, 25);
			contentPane.add(botonesUsuarios[i]);
			botonesUsuarios[i].addActionListener(this);
		}

		volver = new JButton("Volver");
		volver.setBounds(800, 500, 75, 25);
		volver.addActionListener(this);
		contentPane.add(volver);

		JLabel titulo = new JLabel("ELIJA USUARIO EXISTENTE");
		titulo.setBounds(350, 50, 200, 25);
		contentPane.add(titulo);

		this.miFrame.paintComponents(miFrame.getGraphics());
	}

	public void actionPerformed(ActionEvent e) {
		if (e.getSource() == volver) {
			new VentanaDeUsuarios(miJuego, miFrame);
		}

		for (int i = 0; i < cantidadUsuarios; i++) {
			if (e.getSource() == botonesUsuarios[i]) {
				miJuego.setUsuarioActual(botonesUsuarios[i].getText());
				new VentanaTutorial(this.miJuego,this.miFrame);
			}
		}
	}

}
